package com.net.oil.product.contract;

import com.net.oil.base.IBaseModel;
import com.net.oil.product.bean.ProductListBean;

/**
 * 作者：lch
 * 时间：2018/4/5:14:39
 * 邮箱：245850413@qq.com
 * 说明：
 */

public interface ProductListContract {
    interface Model extends IBaseModel{

        /**
         * 根据产品类别id，获取产品列表
         * @param categoryId    分类id
         * @param name  产品名称（模糊查询），可以不传
         * @param page  当前页
         * @param rows  分页大小
         */
        void getProductList(int categoryId, String name, int page, int rows);
    }

    interface View {

        /**
         * 获取产品列表成功
         * @param productListBeen   产品列表数据
         */
        void getProductListSuccess(ProductListBean productListBeen);

        /**
         * 获取产品列表失败
         */
        void getProductListFailed();
    }

    interface Presenter {
        /**
         * 根据产品类别id，获取产品列表
         * @param categoryId    分类id
         * @param name  产品名称（模糊查询），可以不传
         * @param page  当前页
         * @param rows  分页大小
         */
        void getProductList(int categoryId, String name, int page, int rows);

        /**
         * 获取产品列表成功
         * @param productListBeen   产品列表数据
         */
        void getProductListSuccess(ProductListBean productListBeen);

        /**
         * 获取产品列表失败
         */
        void getProductListFailed();
    }
}
